Remove warnings about old configuration on publish.
authorEvgen Druzhynin <evgen.druzhynin@gmail.com>
Sat, 27 May 2017 09:33:12 +0000 (12:33 +0300)
committerEvgen Druzhynin <evgen.druzhynin@gmail.com>
Thu, 1 Jun 2017 14:29:46 +0000 (17:29 +0300)
src/cargo/ops/registry.rs
src/cargo/util/config.rs
tests/publish.rs

index 7bf9a0f08f71809bdfbf02e4982199a80cea38f3..78681a6904e8a0703feea803fb4c3cb4271cf835 100644 (file)
@@ -66,14 +66,6 @@ pub fn publish(ws: &Workspace, opts: &PublishOpts) -> CargoResult<()> {
     opts.config.shell().status("Uploading", pkg.package_id().to_string())?;
     transmit(opts.config, pkg, tarball.file(), &mut registry, opts.dry_run)?;
 
-    if opts.config.is_token_in_main_config() {
-        let _ = opts.config
-                    .shell()
-                    .warn("API token detected in ~/.cargo/config under `registry.token`.\n \
-                          You should remove it and do `login` again in order to \
-                          save token in ~/.cargo/credentials");
-    }
-
     Ok(())
 }
 
index c99ec82c661bc10b9f596543a913786bd1c0076f..b99285ce7a1f9d0129fe30f7c228268d5832f209 100644 (file)
@@ -34,10 +34,6 @@ pub struct Config {
     extra_verbose: Cell<bool>,
     frozen: Cell<bool>,
     locked: Cell<bool>,
-
-    // A temporary solution to point on an old configuration's usage.
-    // If it's true cargo will warn on it on publish.
-    token_in_main_config: Cell<bool>,
 }
 
 impl Config {
@@ -55,7 +51,6 @@ impl Config {
             extra_verbose: Cell::new(false),
             frozen: Cell::new(false),
             locked: Cell::new(false),
-            token_in_main_config: Cell::new(false),
         }
     }
 
@@ -408,10 +403,6 @@ impl Config {
         !self.frozen.get() && !self.locked.get()
     }
 
-    pub fn is_token_in_main_config(&self) -> bool {
-        self.token_in_main_config.get()
-    }
-
     pub fn load_values(&self) -> CargoResult<HashMap<String, ConfigValue>> {
         let mut cfg = CV::Table(HashMap::new(), PathBuf::from("."));
 
@@ -438,8 +429,6 @@ impl Config {
             Ok(())
         }).chain_err(|| "Couldn't load Cargo configuration")?;
 
-        self.token_in_main_config.set(check_token_in_main_config("registry.token".into(), &cfg));
-
         let mut map = match cfg {
             CV::Table(map, _) => map,
             _ => unreachable!(),
@@ -823,20 +812,3 @@ fn load_credentials(home: &PathBuf) -> CargoResult<Option<String>> {
 
     Ok(Some(token.trim().into()))
 }
-
-fn check_token_in_main_config(key: &str, cfg: &ConfigValue) -> bool {
-    let mut keys = key.split('.');
-    let k = keys.next().unwrap();
-    let keys: String = keys.map(String::from).collect();
-
-    match *cfg {
-        CV::Table(ref map, _) => {
-            match map.get(k) {
-                Some(ref v) => check_token_in_main_config(keys.as_str(), v),
-                None => return false,
-            }
-        }
-        CV::String(ref v, _) => !v.is_empty(),
-        _ => return false,
-    }
-}
index f514adf9c84522d8d33d4dccf1de8d471d2b0f9b..968281f6219a486c8c1f6d6829f24c7d32f75914 100644 (file)
@@ -57,7 +57,7 @@ fn simple() {
 
     assert_that(p.cargo_process("publish").arg("--no-verify")
                  .arg("--host").arg(registry().to_string()),
-                execs().with_status(0).with_stderr_contains(&format!("\
+                execs().with_status(0).with_stderr(&format!("\
 [UPDATING] registry `{reg}`
 [WARNING] manifest has no documentation, [..]
 See [..]
@@ -371,7 +371,7 @@ fn dry_run() {
 
     assert_that(p.cargo_process("publish").arg("--dry-run")
                  .arg("--host").arg(registry().to_string()),
-                execs().with_status(0).with_stderr_contains(&format!("\
+                execs().with_status(0).with_stderr(&format!("\
 [UPDATING] registry `[..]`
 [WARNING] manifest has no documentation, [..]
 See [..]